#ifndef REMOTECONTROLFORM_H
#define REMOTECONTROLFORM_H

#include <QWidget>
#include "pilot_signal.h"// 包含pilot_signal的头文件
#include "lamplight.h"  // 包含lamplight头文件

namespace Ui {
class RemoteControlForm;
}

class RemoteControlForm : public QWidget
{
    Q_OBJECT

public:
    explicit RemoteControlForm(QWidget *parent = nullptr);
    ~RemoteControlForm();

    void updateConnectionStatus(QString status);//接收状态并更新label_3的槽函数
    void setModeButtonsEnabled(bool enabled);    // 新增：设置模式按钮状态

signals:
    void switchToWidget(); // 切换到网络连接界面的信号
    void switchToPilotSignal(); //切换到空调遥控界面的信号
    void switchToLamplight(); // 切换到灯光界面的信号（关键）

    void sendCommand(QString cmd);//发送命令的信号（参数为命令字符串）

private slots:
    void on_pushButton_11_clicked();//"进入网络连接按钮"进入widget.ui（tcp网络连接界面）的点击槽函数
    void on_pushButton_5_clicked();//"空调遥控"按钮进入pilot_signal.ui(空调遥控按钮界面)的点击槽函数
    void on_pushButton_6_clicked();  //"灯光遥控"按钮进入lamplight.ui（灯光遥控按钮界面）的点击槽函数

    void on_pushButton_clicked();// 离家模式（发送1）
    void on_pushButton_2_clicked();// 归家模式（发送2）
    void on_pushButton_3_clicked();// 睡眠模式（发送3）
    void on_pushButton_4_clicked();// 起床模式（发送4）

    void on_pushButton_7_clicked();//"窗帘开关"按钮的槽函数
    void on_pushButton_8_clicked();//"加湿器开关"按钮的槽函数
    void on_pushButton_9_clicked();//"智能门锁开关"按钮的槽函数

public slots:
    void onNetworkMessageReceived(QString message);// 处理从网络接收到的网络消息

private:
    Ui::RemoteControlForm *ui;
    bool isConnected; // 新增：记录连接状态

    // 新增：跟踪设备状态
        bool curtainState = false;    // 窗帘状态（false-关闭，true-开启）
        bool humidifierState = false; // 加湿器状态
        bool doorLockState = false;   // 智能门锁状态
};

#endif // REMOTECONTROLFORM_H
